package com.ufcg.lvc.client.MyListGrids;

import java.util.List;

import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.ufcg.lvc.client.GreetingServiceCRUDAsync;
import com.ufcg.lvc.client.UserData;
import com.ufcg.lvc.client.Datas.QuestoesDoModeloData;

/**
 * 
 * @author Larissa Costa
 * 
 */
public class QuestoesDoModeloListGrid extends MyListGrid {
	UserData UD;
	public QuestoesDoModeloListGrid(GreetingServiceCRUDAsync servico, UserData uD) {
		super();
		UD = uD;

		String[] camposQuestoes = { "valor", "titulo", "assunto", "enunciado", "tipo", "dificuldade" };
		String[] titulosQuestoes = { "Valor", "Título", "Assunto", "Enunciado", "Tipo", "Nível de Dificuldade" };

		this.setCampos(camposQuestoes);
		this.setTitulos(titulosQuestoes);
		this.setServico(servico);

		this.addColunas(campos, titulos);
		// this.loadDados();
	}

	public void loadDados(String modelo_id, UserData uD) {
		UD = uD;
		final AsyncCallback<List<List<String>>> callback = new AsyncCallback<List<List<String>>>() {
			@Override
			public void onFailure(Throwable caught) {
				Window.alert("Erro ao carregar questoes do modelo");
				System.out.println("Erro ao carregar questoes do modelo");
			}

			@Override
			public void onSuccess(List<List<String>> result) {
				setData(QuestoesDoModeloData.getRecords(result.get(0), result.get(1), result.get(2), result.get(3), result.get(4), result.get(5)));
			}
		};
		this.getServico().getQuestoesDoModelo(modelo_id, UD.getId_usuario(), callback);
	}
}
